This invention relates, in general, to communications network data transfer operations. In particular, the present invention relates to reducing the loading of servers in a communications network to increase network performance by automatically rerouting data packets to lightly loaded servers when the initial destination server is heavily loaded.
Traditional telecommunications transmissions are completed when a caller dials a telephone number and the local exchange carrier ("LEC") completes the call by establishing a communications link between the caller and the recipient. Even in long-distance communications (i.e., communications between callers located in two different LEC's), calls are completed by simply establishing a communications link between the parties based on the recipient's phone number, whereby the telephone number dialed is the destination telephone number. Toll Free calling and other similar services (e.g., 1-800-123-4567), however, are handled differently.
Toll free calling is typically controlled by a central relay server that performs a look-up table function to determine the destination telephone number. The look-up function is necessary because, unlike toll calls in which an area code and phone number uniquely identifies a destination, toll free phone numbers are essentially non-geographic based (i.e., the same phone number is used to place a call regardless of the physical location of the actual destination). The central relay server, which in reality may be simply the telephone switch nearest to the caller, translates the dialed phone number into the actual phone number of the recipient.
The translation process may be an "intelligent" process, in that it may account for considerations such as time of day, network or server loading, caller ID, etc., or it may be a simple translation based solely on phone number. Once the phone number is translated, the call is placed to the recipient regardless of variations in loading. This may lead to a significant degradation in performance when either the network or the destination server become loaded down.
Problems related to performance degradation may be reduced as telecommunications changes from traditional, analog, voice-based communications to digital, packet networks. In packet networks, communications are first converted from analog to digital, and then are divided up into packets. The packets are assigned an address and then transferred to the address. Once a packet is addressed the network may attempt to route it to the appropriate destination. However, once the packet is placed on the network, the address may be changed by the network so that the call is routed to an actual call center that is best suited to handle the call in view of the overall network conditions (e.g., if the network routing to the original actual destination is heavily loaded, the network may change the destination address to a server that can be reached through less heavily loaded network resources).
While packet networks may help to alleviate network congestion, packet networks as currently implemented do not address the problems related to server loading. Thus, even if the revised destination address is to an overloaded server, the data transfer to that server occurs resulting in further reductions in performance at the overloaded serve.r It would therefore be desirable to provide techniques for packet network communications that reduce server loading to improve overall network performance.